package com.graduation.lastproject.dao.admin;

import com.graduation.lastproject.entity.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface AdminHighDao {
    //user total
    Integer getTotal(User user);

    //user list
    List<User> getUserListPage(User user);

    //updata user
    Integer updataUserInfo(Map<String, Object> map);

    //business total
    Integer getBusinessTotal(Business business);

    //business list
    List<Business> getBusinessListPage(Business business);

    //updata business
    int updataBusinessInfo(Map<String, Object> map);

    //hotel total
    Integer getBusinessInfoTotal(HotelInfo hotelInfo);

    //hotel list
    List<HotelInfo> getBusinessInfoListPage(HotelInfo hotelInfo);

    // updata t_bs_hotel_info state  1
    Integer passHotel(String id);

    //updata t_bs_hotel_info state 0
    Integer returnHotel(Map<String, Object> map);

   /*订单 总数*/
   Integer getOrderTotal(Bookorder bookorder);

   /*订单列表*/
    List<Bookorder> getOrderInfoListPage(Bookorder bookorder);

    /*删除订单*/
    Integer deleteBookorderById(String id);

    /*评论总数*/
    Integer getReviewTotal(Review review);

    /*评论列表*/
    List<Review> getReviewListPage(Review review);

    /*删除评论*/
    Integer deleteReviewById(String reviewId);

    /*新建商品信息*/
    Integer insertComInfo(Map<String, Object> info);

    /*商品总数*/
    Integer getComTotal(Commodity commodity);

    /*商品信息*/
    List<Commodity> getComListPage(Commodity commodity);

    /*更新商品信息*/
    Integer updataExchangeInfo(Map<String, Object> map);

    /*获取兑换记录总数*/
    Integer getShoporderTotal(Commodityorder commodityorder);

    /*获取兑换记录信息*/
    List<Commodityorder> getShopInfoList(Commodityorder commodityorder);

    /*删除兑换记录*/
    Integer deleteIntegralorder(String commodity_orderId);

    /*获取饼状图酒店房间预订填充数据*/
    Map<String,Object> getBooknum();

    /*获取饼状图酒店房间价格预订填充数据*/
    Map<String,Object> getBookprice();

    /*统计有收入酒店总数*/
    Integer getHotelpriceTotal(Hotelincome hotelincome);

    /*统计酒店收入*/
    List<Hotelincome> getHotelpriceInfo(Hotelincome hotelincome);

    /*获取酒店所有信息*/
    List<Map<String,Object>> getHotelpriceInfoExport(@Param("redTime")String redTime, @Param("subTime")String subTime);

    /*删除兑换商品*/
    Integer deleteComById(String deleteComId);
}
